/* Copyright 2018 JDCLOUD.COM

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http:#www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Hu-Fu
关于虎符的相关接口

OpenAPI spec version: v1
Contact: 

NOTE: This class is auto generated by the jdcloud code generator program.
*/


#ifndef ApigatewayApiModel_h
#define ApigatewayApiModel_h
#import <JDCloudOCSDKCore/JDCloudOCSDKCore.h>
#import <JDCloudOCSDKCommon/JDCloudOCSDKCommon.h>
#import <JDCloudOCSDKApigateway/ApigatewayModel.h>


@interface ApigatewayUpdateApiResult : NSObject
/// apiId
 @property (strong,nonatomic,nonnull)  NSString*  apiId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithApiId:(NSString*) apiId;
@end

@interface ApigatewayCheckApiNameExistResult : NSObject
/// API名称
 @property (strong,nonatomic,nonnull)  NSString*  apiId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithApiId:(NSString*) apiId;
@end

@interface ApigatewayDeleteApiRequest:JDCloudRequest

/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// 版本号
@property (strong,nonatomic,nonnull)  NSString*  revision;
/// 接口ID
@property (strong,nonatomic,nonnull)  NSString*  apiId;
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiId:(NSString*)apiId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiId:(NSString*)apiId;

@end

@interface ApigatewayCheckApiNameExistRequest:JDCloudRequest

/// API名称
@property (strong,nonatomic,nonnull)  NSString*  apiName;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// 版本号
@property (strong,nonatomic,nonnull)  NSString*  revision;
-(id) initWithRegion:(NSString *)regionId
apiName:(NSString*)apiName
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiName:(NSString*)apiName
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision;

@end

@interface ApigatewayDeleteApiByNameRequest:JDCloudRequest

/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// 版本号
@property (strong,nonatomic,nonnull)  NSString*  revision;
/// ApiName
@property (strong,nonatomic,nonnull)  NSString*  apiName;
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiName:(NSString*)apiName;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiName:(NSString*)apiName;

@end

@interface ApigatewayCreateApisResult : NSObject
/// apiId
 @property (strong,nonatomic,nonnull)  NSString*  apiId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithApiId:(NSString*) apiId;
@end

@interface ApigatewayBatchOfflineRequest:JDCloudRequest

/// 要删除的部署ID集合，以,分隔
@property (strong,nonatomic,nonnull)  NSString*  deploymentIds;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
-(id) initWithRegion:(NSString *)regionId
deploymentIds:(NSString*)deploymentIds
apiGroupId:(NSString*)apiGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
deploymentIds:(NSString*)deploymentIds
apiGroupId:(NSString*)apiGroupId;

@end

@interface ApigatewayOfflineRequest:JDCloudRequest

/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// 部署ID
@property (strong,nonatomic,nonnull)  NSString*  deploymentId;
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId
deploymentId:(NSString*)deploymentId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId
deploymentId:(NSString*)deploymentId;

@end

@interface ApigatewayDeployRequest:JDCloudRequest

/// 发布的修订版本号
@property (strong,nonatomic,nonnull)  NSString*  revision;
/// 环境：test、preview、online
@property (strong,nonatomic,nonnull)  NSString*  environment;
/// 后端服务类型：mock、unique、vpc
@property (strong,nonatomic,nonnull)  NSString*  backendServiceType;
/// 后端地址
@property (strong,nonatomic,nonnull)  NSString*  backendUrl;
/// 描述
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 微服务网关名称
@property (strong,nonatomic,nonnull)  NSString*  jdsfName;
/// 微服务注册中心ID
@property (strong,nonatomic,nonnull)  NSString*  jdsfRegistryName;
/// 微服务ID
@property (strong,nonatomic,nonnull)  NSString*  jdsfId;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
-(id) initWithRegion:(NSString *)regionId
revision:(NSString*)revision
environment:(NSString*)environment
backendServiceType:(NSString*)backendServiceType
backendUrl:(NSString*)backendUrl
descriptionValue:(NSString*)descriptionValue
jdsfName:(NSString*)jdsfName
jdsfRegistryName:(NSString*)jdsfRegistryName
jdsfId:(NSString*)jdsfId
apiGroupId:(NSString*)apiGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
revision:(NSString*)revision
environment:(NSString*)environment
backendServiceType:(NSString*)backendServiceType
backendUrl:(NSString*)backendUrl
descriptionValue:(NSString*)descriptionValue
jdsfName:(NSString*)jdsfName
jdsfRegistryName:(NSString*)jdsfRegistryName
jdsfId:(NSString*)jdsfId
apiGroupId:(NSString*)apiGroupId;

@end

@interface ApigatewayDescribeDeploymentRequest:JDCloudRequest

/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// 部署ID
@property (strong,nonatomic,nonnull)  NSString*  deploymentId;
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId
deploymentId:(NSString*)deploymentId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId
deploymentId:(NSString*)deploymentId;

@end

@interface ApigatewayDescribeDeploymentResult : NSObject
/// 部署ID
 @property (strong,nonatomic,nonnull)  NSString*  deploymentId;
/// 发布的修订版本号
 @property (strong,nonatomic,nonnull)  NSString*  revision;
/// 路径
 @property (strong,nonatomic,nonnull)  NSString*  path;
/// 环境：test、preview、online
 @property (strong,nonatomic,nonnull)  NSString*  environment;
/// 后端服务类型：mock、unique、vpc
 @property (strong,nonatomic,nonnull)  NSString*  backendServiceType;
/// 后端地址
 @property (strong,nonatomic,nonnull)  NSString*  backendUrl;
/// 描述
 @property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 发布日期，格式为毫秒级时间戳
 @property (strong,nonatomic,nonnull)  NSNumber*  createTime;
/// 微服务网关名称
 @property (strong,nonatomic,nonnull)  NSString*  jdsfName;
/// 微服务注册中心ID
 @property (strong,nonatomic,nonnull)  NSString*  jdsfRegistryName;
/// 微服务ID
 @property (strong,nonatomic,nonnull)  NSString*  jdsfId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithDeploymentId:(NSString*) deploymentId

    revision:(NSString*)revision

    path:(NSString*)path

    environment:(NSString*)environment

    backendServiceType:(NSString*)backendServiceType

    backendUrl:(NSString*)backendUrl

    descriptionValue:(NSString*)descriptionValue

    createTime:(NSNumber*)createTime

    jdsfName:(NSString*)jdsfName

    jdsfRegistryName:(NSString*)jdsfRegistryName

    jdsfId:(NSString*)jdsfId;
@end

@interface ApigatewayDeleteRateLimitPolicyRequest:JDCloudRequest

/// 限流策略ID
@property (strong,nonatomic,nonnull)  NSString*  policyId;
-(id) initWithRegion:(NSString *)regionId
policyId:(NSString*)policyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
policyId:(NSString*)policyId;

@end

@interface ApigatewayQueryBindGroupPolicyRequest:JDCloudRequest

/// 限流策略ID
@property (strong,nonatomic,nonnull)  NSString*  policyId;
-(id) initWithRegion:(NSString *)regionId
policyId:(NSString*)policyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
policyId:(NSString*)policyId;

@end

@interface ApigatewayCheckPolicyNameRequest:JDCloudRequest

/// PolicyName
@property (strong,nonatomic,nonnull)  NSString*  policyName;
-(id) initWithRegion:(NSString *)regionId
policyName:(NSString*)policyName;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
policyName:(NSString*)policyName;

@end

@interface ApigatewayUpdateRateLimitPolicyResult : NSObject
/// 流控策略Id
 @property (strong,nonatomic,nonnull)  NSString*  policyId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithPolicyId:(NSString*) policyId;
@end

@interface ApigatewayCheckPolicyNameResult : NSObject
/// 返回policyID
 @property (strong,nonatomic,nonnull)  NSString*  policyId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithPolicyId:(NSString*) policyId;
@end

@interface ApigatewayQueryPolicyGroupListRequest:JDCloudRequest

/// 限流策略ID
@property (strong,nonatomic,nonnull)  NSString*  policyId;
-(id) initWithRegion:(NSString *)regionId
policyId:(NSString*)policyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
policyId:(NSString*)policyId;

@end

@interface ApigatewayDeleteRateLimitPolicyResult : NSObject
/// 已删除流控策略Id
 @property (strong,nonatomic,nonnull)  NSString*  policyId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithPolicyId:(NSString*) policyId;
@end

@interface ApigatewayBindGroupPolicyRequest:JDCloudRequest

/// 待绑定的部署ids逗号隔开
@property (strong,nonatomic,nonnull)  NSString*  deploymentIds;
/// 限流策略ID
@property (strong,nonatomic,nonnull)  NSString*  policyId;
-(id) initWithRegion:(NSString *)regionId
deploymentIds:(NSString*)deploymentIds
policyId:(NSString*)policyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
deploymentIds:(NSString*)deploymentIds
policyId:(NSString*)policyId;

@end

@interface ApigatewayCreateRateLimitPolicyResult : NSObject
/// 流控策略Id
 @property (strong,nonatomic,nonnull)  NSString*  policyId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithPolicyId:(NSString*) policyId;
@end

@interface ApigatewayQueryRateLimitPolicyRequest:JDCloudRequest

/// 限流策略ID
@property (strong,nonatomic,nonnull)  NSString*  policyId;
-(id) initWithRegion:(NSString *)regionId
policyId:(NSString*)policyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
policyId:(NSString*)policyId;

@end

@interface ApigatewayDeleteBackendConfigRequest:JDCloudRequest

/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// backendConfigId
@property (strong,nonatomic,nonnull)  NSString*  backendConfigId;
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId
backendConfigId:(NSString*)backendConfigId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId
backendConfigId:(NSString*)backendConfigId;

@end

@interface ApigatewayDescribeBackendConfigRequest:JDCloudRequest

/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// backendConfigId
@property (strong,nonatomic,nonnull)  NSString*  backendConfigId;
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId
backendConfigId:(NSString*)backendConfigId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId
backendConfigId:(NSString*)backendConfigId;

@end

@interface ApigatewayCreateBackendConfigResult : NSObject
/// 主键Id
 @property (strong,nonatomic,nonnull)  NSString*  backendConfigId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithBackendConfigId:(NSString*) backendConfigId;
@end

@interface ApigatewayGetRevisionIdsRequest:JDCloudRequest

/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId;

@end

@interface ApigatewayCheckRevisionExistRequest:JDCloudRequest

/// 版本号
@property (strong,nonatomic,nonnull)  NSString*  revision;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
-(id) initWithRegion:(NSString *)regionId
revision:(NSString*)revision
apiGroupId:(NSString*)apiGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
revision:(NSString*)revision
apiGroupId:(NSString*)apiGroupId;

@end

@interface ApigatewayCheckRevisionExistResult : NSObject
/// 新建修订版本号重复否
 @property (strong,nonatomic,nonnull)  NSNumber*  isRepeate;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithIsRepeate:(NSNumber*) isRepeate;
@end

@interface ApigatewayDeleteRevisionResult : NSObject
/// 删除修订版本成功否
 @property (strong,nonatomic,nonnull)  NSNumber*  deleteRevision;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithDeleteRevision:(NSNumber*) deleteRevision;
@end

@interface ApigatewayCreateRevisionResult : NSObject
/// 新建的修订版本号
 @property (strong,nonatomic,nonnull)  NSString*  revision;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithRevision:(NSString*) revision;
@end

@interface ApigatewayModifyRevisionRequest:JDCloudRequest

/// 修订备注
@property (strong,nonatomic,nonnull)  NSString*  revisionNote;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// 版本ID
@property (strong,nonatomic,nonnull)  NSString*  revisionId;
-(id) initWithRegion:(NSString *)regionId
revisionNote:(NSString*)revisionNote
apiGroupId:(NSString*)apiGroupId
revisionId:(NSString*)revisionId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
revisionNote:(NSString*)revisionNote
apiGroupId:(NSString*)apiGroupId
revisionId:(NSString*)revisionId;

@end

@interface ApigatewayModifyRevisionResult : NSObject
/// 修改修订版本成功否
 @property (strong,nonatomic,nonnull)  NSNumber*  updateRevision;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithUpdateRevision:(NSNumber*) updateRevision;
@end

@interface ApigatewayCreateRevisionRequest:JDCloudRequest

/// 修订版本号，如果创建版本时传回修订版本，此为必填项
@property (strong,nonatomic,nonnull)  NSString*  revision;
/// 基于此版本，如果创建版本时传回修订版本，此为必填项
@property (strong,nonatomic,nonnull)  NSString*  baseRevision;
/// 修订备注
@property (strong,nonatomic,nonnull)  NSString*  revisionNote;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
-(id) initWithRegion:(NSString *)regionId
revision:(NSString*)revision
baseRevision:(NSString*)baseRevision
revisionNote:(NSString*)revisionNote
apiGroupId:(NSString*)apiGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
revision:(NSString*)revision
baseRevision:(NSString*)baseRevision
revisionNote:(NSString*)revisionNote
apiGroupId:(NSString*)apiGroupId;

@end

@interface ApigatewayDeleteRevisionRequest:JDCloudRequest

/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// 版本ID
@property (strong,nonatomic,nonnull)  NSString*  revisionId;
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId
revisionId:(NSString*)revisionId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId
revisionId:(NSString*)revisionId;

@end

@interface ApigatewayQueryKeysRequest:JDCloudRequest

/// 页码, 默认为1, 取值范围：[1,∞)
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小，默认为20，取值范围：[10,100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 排序类型
@property (strong,nonatomic,nonnull)  NSString*  orderBy;
/// 用户类型
@property (strong,nonatomic,nonnull)  NSString*  userType;
/// 密钥Id
@property (strong,nonatomic,nonnull)  NSString*  keyId;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
orderBy:(NSString*)orderBy
userType:(NSString*)userType
keyId:(NSString*)keyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
orderBy:(NSString*)orderBy
userType:(NSString*)userType
keyId:(NSString*)keyId;

@end

@interface ApigatewayCreateKeyRequest:JDCloudRequest

/// key 名称
@property (strong,nonatomic,nonnull)  NSString*  keyName;
/// key 描述
@property (strong,nonatomic,nonnull)  NSString*  keyDesc;
-(id) initWithRegion:(NSString *)regionId
keyName:(NSString*)keyName
keyDesc:(NSString*)keyDesc;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
keyName:(NSString*)keyName
keyDesc:(NSString*)keyDesc;

@end

@interface ApigatewayUpdateKeyRequest:JDCloudRequest

/// keyid
@property (strong,nonatomic,nonnull)  NSString*  keyId;
/// key 名称
@property (strong,nonatomic,nonnull)  NSString*  keyName;
/// KeyDesc
@property (strong,nonatomic,nonnull)  NSString*  keyDesc;
-(id) initWithRegion:(NSString *)regionId
keyId:(NSString*)keyId
keyName:(NSString*)keyName
keyDesc:(NSString*)keyDesc;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
keyId:(NSString*)keyId
keyName:(NSString*)keyName
keyDesc:(NSString*)keyDesc;

@end

@interface ApigatewayQueryKeyInfoRequest:JDCloudRequest

/// keyId
@property (strong,nonatomic,nonnull)  NSString*  keyId;
-(id) initWithRegion:(NSString *)regionId
keyId:(NSString*)keyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
keyId:(NSString*)keyId;

@end

@interface ApigatewayResetKeyRequest:JDCloudRequest

/// keyId
@property (strong,nonatomic,nonnull)  NSString*  keyId;
-(id) initWithRegion:(NSString *)regionId
keyId:(NSString*)keyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
keyId:(NSString*)keyId;

@end

@interface ApigatewayCreateKeyResult : NSObject
/// 生成的accessKey
 @property (strong,nonatomic,nonnull)  NSString*  accessKey;
/// 生成的secretKey
 @property (strong,nonatomic,nonnull)  NSString*  secretKey;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithAccessKey:(NSString*) accessKey

    secretKey:(NSString*)secretKey;
@end

@interface ApigatewayDeleteApiGroupRequest:JDCloudRequest

/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId;

@end

@interface ApigatewayCheckGroupNameExistResult : NSObject
/// 分组id
 @property (strong,nonatomic,nonnull)  NSString*  apiGroupId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithApiGroupId:(NSString*) apiGroupId;
@end

@interface ApigatewayCheckGroupNameExistRequest:JDCloudRequest

/// 分组名称
@property (strong,nonatomic,nonnull)  NSString*  groupName;
-(id) initWithRegion:(NSString *)regionId
groupName:(NSString*)groupName;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
groupName:(NSString*)groupName;

@end

@interface ApigatewayModifyApiGroupAttributeRequest:JDCloudRequest

/// 名称
@property (strong,nonatomic,nonnull)  NSString*  groupName;
/// 描述
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 分组路径前缀
@property (strong,nonatomic,nonnull)  NSString*  prefix;
/// 密钥验证方式：check_exist（密钥必须在访问授权中已配置）、no_check_exist（无需事先配置）
@property (strong,nonatomic,nonnull)  NSString*  keyCheck;
/// 访问授权方式：None（免鉴权）、jd_cloud（开启访问授权，且必须使用京东云的AK、SK验签）、hufu（虎符用户）
@property (strong,nonatomic,nonnull)  NSString*  authType;
/// 是否转发分组路径到后端服务：0（不转发）、1（转发）默认为1
@property (strong,nonatomic,nonnull)  NSNumber*  prefixStrip;
/// 分组类型：api_group（api分组）、jdsf_group（微服务分组）默认为 api_group
@property (strong,nonatomic,nonnull)  NSString*  groupType;
/// 微服务网关名称
@property (strong,nonatomic,nonnull)  NSString*  jdsfName;
/// 微服务注册中心ID
@property (strong,nonatomic,nonnull)  NSString*  jdsfRegistryName;
/// 微服务网关ID
@property (strong,nonatomic,nonnull)  NSString*  jdsfId;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
-(id) initWithRegion:(NSString *)regionId
groupName:(NSString*)groupName
descriptionValue:(NSString*)descriptionValue
prefix:(NSString*)prefix
keyCheck:(NSString*)keyCheck
authType:(NSString*)authType
prefixStrip:(NSNumber*)prefixStrip
groupType:(NSString*)groupType
jdsfName:(NSString*)jdsfName
jdsfRegistryName:(NSString*)jdsfRegistryName
jdsfId:(NSString*)jdsfId
apiGroupId:(NSString*)apiGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
groupName:(NSString*)groupName
descriptionValue:(NSString*)descriptionValue
prefix:(NSString*)prefix
keyCheck:(NSString*)keyCheck
authType:(NSString*)authType
prefixStrip:(NSNumber*)prefixStrip
groupType:(NSString*)groupType
jdsfName:(NSString*)jdsfName
jdsfRegistryName:(NSString*)jdsfRegistryName
jdsfId:(NSString*)jdsfId
apiGroupId:(NSString*)apiGroupId;

@end

@interface ApigatewayCreateApiGroupResult : NSObject
/// 创建的API分组ID
 @property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// 修订版本号
 @property (strong,nonatomic,nonnull)  NSString*  revision;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithApiGroupId:(NSString*) apiGroupId

    revision:(NSString*)revision;
@end

@interface ApigatewayDescribeApiGroupRequest:JDCloudRequest

/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId;

@end

@interface ApigatewayCreateApiGroupRequest:JDCloudRequest

/// 名称
@property (strong,nonatomic,nonnull)  NSString*  groupName;
/// 描述
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 分组路径前缀，无需添加/
@property (strong,nonatomic,nonnull)  NSString*  prefix;
/// 密钥验证方式：check_exist（密钥必须在访问授权中已配置）、no_check_exist（无需事先配置）
@property (strong,nonatomic,nonnull)  NSString*  keyCheck;
/// 访问授权方式：None（免鉴权）、jd_cloud（开启访问授权，且必须使用京东云的AK、SK验签）、hufu（虎符用户）
@property (strong,nonatomic,nonnull)  NSString*  authType;
/// 是否转发分组路径到后端服务：0（不转发）、1（转发）默认为1
@property (strong,nonatomic,nonnull)  NSNumber*  prefixStrip;
/// 分组类型：api_group（api分组）、jdsf_group（微服务分组）默认为 api_group
@property (strong,nonatomic,nonnull)  NSString*  groupType;
/// 微服务网关名称
@property (strong,nonatomic,nonnull)  NSString*  jdsfName;
/// 微服务注册中心ID
@property (strong,nonatomic,nonnull)  NSString*  jdsfRegistryName;
/// 微服务网关ID
@property (strong,nonatomic,nonnull)  NSString*  jdsfId;
-(id) initWithRegion:(NSString *)regionId
groupName:(NSString*)groupName
descriptionValue:(NSString*)descriptionValue
prefix:(NSString*)prefix
keyCheck:(NSString*)keyCheck
authType:(NSString*)authType
prefixStrip:(NSNumber*)prefixStrip
groupType:(NSString*)groupType
jdsfName:(NSString*)jdsfName
jdsfRegistryName:(NSString*)jdsfRegistryName
jdsfId:(NSString*)jdsfId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
groupName:(NSString*)groupName
descriptionValue:(NSString*)descriptionValue
prefix:(NSString*)prefix
keyCheck:(NSString*)keyCheck
authType:(NSString*)authType
prefixStrip:(NSNumber*)prefixStrip
groupType:(NSString*)groupType
jdsfName:(NSString*)jdsfName
jdsfRegistryName:(NSString*)jdsfRegistryName
jdsfId:(NSString*)jdsfId;

@end

@interface ApigatewayCreateUserDomainResult : NSObject
/// 生成的domainId
 @property (strong,nonatomic,nonnull)  NSString*  domainId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithDomainId:(NSString*) domainId;
@end

@interface ApigatewayDeleteUserDomainRequest:JDCloudRequest

/// 要删除domain的id集合，以,分隔
@property (strong,nonatomic,nonnull)  NSString*  domainIds;
/// api分组id
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
-(id) initWithRegion:(NSString *)regionId
domainIds:(NSString*)domainIds
apiGroupId:(NSString*)apiGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainIds:(NSString*)domainIds
apiGroupId:(NSString*)apiGroupId;

@end

@interface ApigatewayQueryUserDomainsRequest:JDCloudRequest

/// 页码
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小，默认为20，取值范围：[10,100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// 排序类型
@property (strong,nonatomic,nonnull)  NSString*  orderBy;
/// api分组id
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
orderBy:(NSString*)orderBy
apiGroupId:(NSString*)apiGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
orderBy:(NSString*)orderBy
apiGroupId:(NSString*)apiGroupId;

@end

@interface ApigatewayCreateUserDomainRequest:JDCloudRequest

/// 域名
@property (strong,nonatomic,nonnull)  NSString*  domain;
/// 协议
@property (strong,nonatomic,nonnull)  NSString*  protocol;
/// api分组id
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
-(id) initWithRegion:(NSString *)regionId
domain:(NSString*)domain
protocol:(NSString*)protocol
apiGroupId:(NSString*)apiGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domain:(NSString*)domain
protocol:(NSString*)protocol
apiGroupId:(NSString*)apiGroupId;

@end

@interface ApigatewayQueryAccessKeyRequest:JDCloudRequest

/// access key id
@property (strong,nonatomic,nonnull)  NSString*  accessKeyId;
-(id) initWithRegion:(NSString *)regionId
accessKeyId:(NSString*)accessKeyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessKeyId:(NSString*)accessKeyId;

@end

@interface ApigatewayQueryKeyGroupListRequest:JDCloudRequest

/// access key id
@property (strong,nonatomic,nonnull)  NSString*  accessKeyId;
-(id) initWithRegion:(NSString *)regionId
accessKeyId:(NSString*)accessKeyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessKeyId:(NSString*)accessKeyId;

@end

@interface ApigatewayDeleteAccessKeyRequest:JDCloudRequest

/// access key id
@property (strong,nonatomic,nonnull)  NSString*  accessKeyId;
-(id) initWithRegion:(NSString *)regionId
accessKeyId:(NSString*)accessKeyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessKeyId:(NSString*)accessKeyId;

@end

@interface ApigatewayBindGroupKeyRequest:JDCloudRequest

/// 待绑定的部署ids用逗号隔开
@property (strong,nonatomic,nonnull)  NSString*  deploymentIds;
/// access key id
@property (strong,nonatomic,nonnull)  NSString*  accessKeyId;
-(id) initWithRegion:(NSString *)regionId
deploymentIds:(NSString*)deploymentIds
accessKeyId:(NSString*)accessKeyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
deploymentIds:(NSString*)deploymentIds
accessKeyId:(NSString*)accessKeyId;

@end

@interface ApigatewayCreateAccessKeyResult : NSObject
/// 已创建密钥ID
 @property (strong,nonatomic,nonnull)  NSString*  accessKeyId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithAccessKeyId:(NSString*) accessKeyId;
@end

@interface ApigatewayDeleteAccessKeyResult : NSObject
/// 已删除密钥Id
 @property (strong,nonatomic,nonnull)  NSString*  accessKeyId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithAccessKeyId:(NSString*) accessKeyId;
@end

@interface ApigatewayCheckKeyExistRequest:JDCloudRequest

/// AccessKey
@property (strong,nonatomic,nonnull)  NSString*  accessKey;
/// AccessKeyType
@property (strong,nonatomic,nonnull)  NSString*  accessKeyType;
-(id) initWithRegion:(NSString *)regionId
accessKey:(NSString*)accessKey
accessKeyType:(NSString*)accessKeyType;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessKey:(NSString*)accessKey
accessKeyType:(NSString*)accessKeyType;

@end

@interface ApigatewayUpdateAccessKeyRequest:JDCloudRequest

/// 描述
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 密钥类型
@property (strong,nonatomic,nonnull)  NSString*  accessKeyType;
/// Access Key
@property (strong,nonatomic,nonnull)  NSString*  accessKey;
/// access key id
@property (strong,nonatomic,nonnull)  NSString*  accessKeyId;
-(id) initWithRegion:(NSString *)regionId
descriptionValue:(NSString*)descriptionValue
accessKeyType:(NSString*)accessKeyType
accessKey:(NSString*)accessKey
accessKeyId:(NSString*)accessKeyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
descriptionValue:(NSString*)descriptionValue
accessKeyType:(NSString*)accessKeyType
accessKey:(NSString*)accessKey
accessKeyId:(NSString*)accessKeyId;

@end

@interface ApigatewayQueryBindGroupKeyRequest:JDCloudRequest

/// access key id
@property (strong,nonatomic,nonnull)  NSString*  accessKeyId;
-(id) initWithRegion:(NSString *)regionId
accessKeyId:(NSString*)accessKeyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessKeyId:(NSString*)accessKeyId;

@end

@interface ApigatewayCreateAccessKeyRequest:JDCloudRequest

/// 描述
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 密钥类型
@property (strong,nonatomic,nonnull)  NSString*  accessKeyType;
/// Access Key
@property (strong,nonatomic,nonnull)  NSString*  accessKey;
-(id) initWithRegion:(NSString *)regionId
descriptionValue:(NSString*)descriptionValue
accessKeyType:(NSString*)accessKeyType
accessKey:(NSString*)accessKey;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
descriptionValue:(NSString*)descriptionValue
accessKeyType:(NSString*)accessKeyType
accessKey:(NSString*)accessKey;

@end

@interface ApigatewayUpdateAccessKeyResult : NSObject
/// 已更新密钥Id
 @property (strong,nonatomic,nonnull)  NSString*  accessKeyId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithAccessKeyId:(NSString*) accessKeyId;
@end

@interface ApigatewayDeleteAccessAuthRequest:JDCloudRequest

/// 访问授权ID
@property (strong,nonatomic,nonnull)  NSString*  accessAuthId;
-(id) initWithRegion:(NSString *)regionId
accessAuthId:(NSString*)accessAuthId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessAuthId:(NSString*)accessAuthId;

@end

@interface ApigatewayQueryAuthGroupListRequest:JDCloudRequest

/// 待绑定的用户类型
@property (strong,nonatomic,nonnull)  NSString*  authUserType;
-(id) initWithRegion:(NSString *)regionId
authUserType:(NSString*)authUserType;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
authUserType:(NSString*)authUserType;

@end

@interface ApigatewayCheckAuthExistResult : NSObject
/// 返回accessAuthId
 @property (strong,nonatomic,nonnull)  NSString*  accessAuthId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithAccessAuthId:(NSString*) accessAuthId;
@end

@interface ApigatewayQueryAccessAuthRequest:JDCloudRequest

/// 访问授权ID
@property (strong,nonatomic,nonnull)  NSString*  accessAuthId;
-(id) initWithRegion:(NSString *)regionId
accessAuthId:(NSString*)accessAuthId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessAuthId:(NSString*)accessAuthId;

@end

@interface ApigatewayUpdateAccessAuthResult : NSObject
/// 已更新访问授权ID
 @property (strong,nonatomic,nonnull)  NSString*  accessAuthId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithAccessAuthId:(NSString*) accessAuthId;
@end

@interface ApigatewayCheckAuthExistRequest:JDCloudRequest

/// AccessKey
@property (strong,nonatomic,nonnull)  NSString*  accessKey;
/// AuthUserType
@property (strong,nonatomic,nonnull)  NSString*  authUserType;
-(id) initWithRegion:(NSString *)regionId
accessKey:(NSString*)accessKey
authUserType:(NSString*)authUserType;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessKey:(NSString*)accessKey
authUserType:(NSString*)authUserType;

@end

@interface ApigatewayCreateAccessAuthResult : NSObject
/// 已创建访问授权ID
 @property (strong,nonatomic,nonnull)  NSString*  accessAuthId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithAccessAuthId:(NSString*) accessAuthId;
@end

@interface ApigatewayQueryBindGroupAuthRequest:JDCloudRequest

/// 访问授权ID
@property (strong,nonatomic,nonnull)  NSString*  accessAuthId;
-(id) initWithRegion:(NSString *)regionId
accessAuthId:(NSString*)accessAuthId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessAuthId:(NSString*)accessAuthId;

@end

@interface ApigatewayBindGroupAuthRequest:JDCloudRequest

/// 待绑定的部署ids逗号隔开
@property (strong,nonatomic,nonnull)  NSString*  deploymentIds;
/// 访问授权ID
@property (strong,nonatomic,nonnull)  NSString*  accessAuthId;
-(id) initWithRegion:(NSString *)regionId
deploymentIds:(NSString*)deploymentIds
accessAuthId:(NSString*)accessAuthId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
deploymentIds:(NSString*)deploymentIds
accessAuthId:(NSString*)accessAuthId;

@end

@interface ApigatewayDeleteAccessAuthResult : NSObject
/// 已删除授权ID
 @property (strong,nonatomic,nonnull)  NSString*  accessAuthId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithAccessAuthId:(NSString*) accessAuthId;
@end

@interface ApigatewayCheckPinRequest:JDCloudRequest

/// 京东云pin
@property (strong,nonatomic,nonnull)  NSString*  pin;
-(id) initWithRegion:(NSString *)regionId
pin:(NSString*)pin;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pin:(NSString*)pin;

@end

@interface ApigatewayUpdateSubscriptionKeyResult : NSObject
/// 已更新密钥Id
 @property (strong,nonatomic,nonnull)  NSString*  subscriptionKeyId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSubscriptionKeyId:(NSString*) subscriptionKeyId;
@end

@interface ApigatewayQuerySubscriptionKeyRequest:JDCloudRequest

/// subscription key id
@property (strong,nonatomic,nonnull)  NSString*  subscriptionKeyId;
-(id) initWithRegion:(NSString *)regionId
subscriptionKeyId:(NSString*)subscriptionKeyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
subscriptionKeyId:(NSString*)subscriptionKeyId;

@end

@interface ApigatewayCreateSubscriptionKeyRequest:JDCloudRequest

/// 描述
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 密钥名称
@property (strong,nonatomic,nonnull)  NSString*  name;
-(id) initWithRegion:(NSString *)regionId
descriptionValue:(NSString*)descriptionValue
name:(NSString*)name;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
descriptionValue:(NSString*)descriptionValue
name:(NSString*)name;

@end

@interface ApigatewayDeleteSubscriptionKeyResult : NSObject
/// 已删除密钥Id
 @property (strong,nonatomic,nonnull)  NSString*  subscriptionKeyId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSubscriptionKeyId:(NSString*) subscriptionKeyId;
@end

@interface ApigatewayDeleteSubscriptionKeyRequest:JDCloudRequest

/// subscription key id
@property (strong,nonatomic,nonnull)  NSString*  subscriptionKeyId;
-(id) initWithRegion:(NSString *)regionId
subscriptionKeyId:(NSString*)subscriptionKeyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
subscriptionKeyId:(NSString*)subscriptionKeyId;

@end

@interface ApigatewayUpdateSubscriptionKeyRequest:JDCloudRequest

/// 描述
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 密钥名称
@property (strong,nonatomic,nonnull)  NSString*  name;
/// subscription key id
@property (strong,nonatomic,nonnull)  NSString*  subscriptionKeyId;
-(id) initWithRegion:(NSString *)regionId
descriptionValue:(NSString*)descriptionValue
name:(NSString*)name
subscriptionKeyId:(NSString*)subscriptionKeyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
descriptionValue:(NSString*)descriptionValue
name:(NSString*)name
subscriptionKeyId:(NSString*)subscriptionKeyId;

@end

@interface ApigatewayCreateSubscriptionKeyResult : NSObject
/// 已创建密钥ID
 @property (strong,nonatomic,nonnull)  NSString*  subscriptionKeyId;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSubscriptionKeyId:(NSString*) subscriptionKeyId;
@end

@interface ApigatewayUpdateApiByNameResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface ApigatewayQueryApiRequest:JDCloudRequest

/// isApiProduct - 是否API产品，精确匹配，1为是
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// 版本号
@property (strong,nonatomic,nonnull)  NSString*  revision;
/// 接口ID
@property (strong,nonatomic,nonnull)  NSString*  apiId;
-(id) initWithRegion:(NSString *)regionId
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiId:(NSString*)apiId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiId:(NSString*)apiId;

@end

@interface ApigatewayUpdateApiByNameRequest:JDCloudRequest

/// api
@property (strong,nonatomic,nonnull)  CreateApi*  api;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// 版本号
@property (strong,nonatomic,nonnull)  NSString*  revision;
/// ApiName
@property (strong,nonatomic,nonnull)  NSString*  apiName;
-(id) initWithRegion:(NSString *)regionId
api:(CreateApi*)api
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiName:(NSString*)apiName;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
api:(CreateApi*)api
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiName:(NSString*)apiName;

@end

@interface ApigatewayQueryApiResult : NSObject
/// Api
 @property (strong,nonatomic,nonnull)  Api*  api;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithApi:(Api*) api;
@end

@interface ApigatewayUpdateApiResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayUpdateApiResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayUpdateApiResult*) result;
@end

@interface ApigatewayUpdateApiByNameResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayUpdateApiByNameResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayUpdateApiByNameResult*) result;
@end

@interface ApigatewayQueryApiResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryApiResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryApiResult*) result;
@end

@interface ApigatewayUpdateApiRequest:JDCloudRequest

/// api
@property (strong,nonatomic,nonnull)  CreateApi*  api;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// 版本号
@property (strong,nonatomic,nonnull)  NSString*  revision;
/// 接口ID
@property (strong,nonatomic,nonnull)  NSString*  apiId;
-(id) initWithRegion:(NSString *)regionId
api:(CreateApi*)api
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiId:(NSString*)apiId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
api:(CreateApi*)api
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiId:(NSString*)apiId;

@end

@interface ApigatewayQueryApisResult : NSObject
/// Apis
 @property (strong,nonatomic,nonnull)  NSArray<Api*>*  apis;
/// 查询的数目
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithApis:(NSArray<Api*>*) apis

    totalCount:(NSNumber*)totalCount;
@end

@interface ApigatewayQueryApisResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryApisResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryApisResult*) result;
@end

@interface ApigatewayCreateApisResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCreateApisResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCreateApisResult*) result;
@end

@interface ApigatewayDeleteApiByNameResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface ApigatewayDeleteApiByNameResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDeleteApiByNameResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDeleteApiByNameResult*) result;
@end

@interface ApigatewayCheckApiNameExistResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCheckApiNameExistResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCheckApiNameExistResult*) result;
@end

@interface ApigatewayDeleteApiResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface ApigatewayDeleteApiResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDeleteApiResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDeleteApiResult*) result;
@end

@interface ApigatewayCreateApisRequest:JDCloudRequest

/// api
@property (strong,nonatomic,nonnull)  CreateApi*  api;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// 版本号
@property (strong,nonatomic,nonnull)  NSString*  revision;
-(id) initWithRegion:(NSString *)regionId
api:(CreateApi*)api
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
api:(CreateApi*)api
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision;

@end

@interface ApigatewayQueryApisRequest:JDCloudRequest

/// 页码, 默认为1, 取值范围：[1,∞)
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小，默认为20，取值范围：[10,100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// apiName - API名称，模糊匹配，支持单个
   /// action - 动作，精确匹配，支持多个
   /// backServiceType- 后端服务类型，精确匹配，支持多个
   /// path - 路径，模糊匹配，支持单个
   /// description - 描述，模糊匹配，支持单个
   /// isApiProduct - 是否API产品，精确匹配，1为是
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// 版本号
@property (strong,nonatomic,nonnull)  NSString*  revision;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision;

@end

@interface ApigatewayDescribeDeploymentsResult : NSObject
/// Deployments
 @property (strong,nonatomic,nonnull)  NSArray<Deployment*>*  deployments;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithDeployments:(NSArray<Deployment*>*) deployments;
@end

@interface ApigatewayDeployResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface ApigatewayDescribeDeploymentResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDescribeDeploymentResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDescribeDeploymentResult*) result;
@end

@interface ApigatewayBatchOfflineResult : NSObject
/// 操作成功的资源个数
 @property (strong,nonatomic,nonnull)  NSNumber*  successCount;
/// Failed
 @property (strong,nonatomic,nonnull)  NSArray<ErrorItem*>*  failed;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSuccessCount:(NSNumber*) successCount

    failed:(NSArray<ErrorItem*>*)failed;
@end

@interface ApigatewayBatchOfflineResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayBatchOfflineResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayBatchOfflineResult*) result;
@end

@interface ApigatewayOfflineResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface ApigatewayDescribeDeploymentsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDescribeDeploymentsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDescribeDeploymentsResult*) result;
@end

@interface ApigatewayOfflineResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayOfflineResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayOfflineResult*) result;
@end

@interface ApigatewayDeployResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDeployResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDeployResult*) result;
@end

@interface ApigatewayDescribeDeploymentsRequest:JDCloudRequest

/// isApiProduct - 是否API产品，精确匹配，1为是
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
-(id) initWithRegion:(NSString *)regionId
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId;

@end

@interface ApigatewayQueryRateLimitPoliciesRequest:JDCloudRequest

/// 页码, 默认为1, 取值范围：[1,∞)
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小，默认为20，取值范围：[10,100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// policyName - 策略名称，模糊匹配
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters;

@end

@interface ApigatewayQueryBindGroupPolicyResult : NSObject
/// BindGroups
 @property (strong,nonatomic,nonnull)  NSArray<BindGroups*>*  bindGroups;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups;
@end

@interface ApigatewayUpdateRateLimitPolicyRequest:JDCloudRequest

/// 流控策略详情
@property (strong,nonatomic,nonnull)  RateLimitPolicyView*  rateLimitPolicyView;
/// 限流策略ID
@property (strong,nonatomic,nonnull)  NSString*  policyId;
-(id) initWithRegion:(NSString *)regionId
rateLimitPolicyView:(RateLimitPolicyView*)rateLimitPolicyView
policyId:(NSString*)policyId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
rateLimitPolicyView:(RateLimitPolicyView*)rateLimitPolicyView
policyId:(NSString*)policyId;

@end

@interface ApigatewayQueryBindGroupPolicyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryBindGroupPolicyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryBindGroupPolicyResult*) result;
@end

@interface ApigatewayCreateRateLimitPolicyRequest:JDCloudRequest

/// 流控策略详情
@property (strong,nonatomic,nonnull)  RateLimitPolicyView*  rateLimitPolicyView;
-(id) initWithRegion:(NSString *)regionId
rateLimitPolicyView:(RateLimitPolicyView*)rateLimitPolicyView;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
rateLimitPolicyView:(RateLimitPolicyView*)rateLimitPolicyView;

@end

@interface ApigatewayQueryRateLimitPoliciesResult : NSObject
/// RateLimitPolicys
 @property (strong,nonatomic,nonnull)  NSArray<RateLimitPolicy*>*  rateLimitPolicys;
/// 查询的流控策略数目
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithRateLimitPolicys:(NSArray<RateLimitPolicy*>*) rateLimitPolicys

    totalCount:(NSNumber*)totalCount;
@end

@interface ApigatewayQueryPolicyGroupListResult : NSObject
/// BindGroups
 @property (strong,nonatomic,nonnull)  NSArray<BindGroups*>*  bindGroups;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups;
@end

@interface ApigatewayQueryPolicyGroupListResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryPolicyGroupListResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryPolicyGroupListResult*) result;
@end

@interface ApigatewayBindGroupPolicyResult : NSObject
/// BindGroups
 @property (strong,nonatomic,nonnull)  NSArray<BindGroups*>*  bindGroups;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups;
@end

@interface ApigatewayBindGroupPolicyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayBindGroupPolicyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayBindGroupPolicyResult*) result;
@end

@interface ApigatewayQueryRateLimitPolicyResult : NSObject
/// RateLimitPolicy
 @property (strong,nonatomic,nonnull)  RateLimitPolicy*  rateLimitPolicy;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithRateLimitPolicy:(RateLimitPolicy*) rateLimitPolicy;
@end

@interface ApigatewayCheckPolicyNameResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCheckPolicyNameResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCheckPolicyNameResult*) result;
@end

@interface ApigatewayCreateRateLimitPolicyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCreateRateLimitPolicyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCreateRateLimitPolicyResult*) result;
@end

@interface ApigatewayQueryRateLimitPolicyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryRateLimitPolicyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryRateLimitPolicyResult*) result;
@end

@interface ApigatewayUpdateRateLimitPolicyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayUpdateRateLimitPolicyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayUpdateRateLimitPolicyResult*) result;
@end

@interface ApigatewayQueryRateLimitPoliciesResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryRateLimitPoliciesResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryRateLimitPoliciesResult*) result;
@end

@interface ApigatewayDeleteRateLimitPolicyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDeleteRateLimitPolicyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDeleteRateLimitPolicyResult*) result;
@end

@interface ApigatewayCreateBackendConfigResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCreateBackendConfigResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCreateBackendConfigResult*) result;
@end

@interface ApigatewayDescribeBackendConfigResult : NSObject
/// BackendConfig
 @property (strong,nonatomic,nonnull)  BackendConfig*  backendConfig;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithBackendConfig:(BackendConfig*) backendConfig;
@end

@interface ApigatewayDescribeBackendConfigsResult : NSObject
/// BackendConfigs
 @property (strong,nonatomic,nonnull)  NSArray<BackendConfig*>*  backendConfigs;
/// 结果总数
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithBackendConfigs:(NSArray<BackendConfig*>*) backendConfigs

    totalCount:(NSNumber*)totalCount;
@end

@interface ApigatewayDescribeBackendConfigsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDescribeBackendConfigsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDescribeBackendConfigsResult*) result;
@end

@interface ApigatewayUpdateBackendConfigResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface ApigatewayUpdateBackendConfigResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayUpdateBackendConfigResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayUpdateBackendConfigResult*) result;
@end

@interface ApigatewayUpdateBackendConfigRequest:JDCloudRequest

/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  baseGroupId;
/// 环境：test、preview、online
@property (strong,nonatomic,nonnull)  NSString*  environment;
/// 后端地址
@property (strong,nonatomic,nonnull)  NSString*  backendUrl;
/// 后端服务类型：mock、HTTP/HTTPS
@property (strong,nonatomic,nonnull)  NSString*  backendServiceType;
/// header参数列表
@property (strong,nonatomic,nonnull)  NSArray<SimpleParameter*>*  headerParams;
/// query参数列表
@property (strong,nonatomic,nonnull)  NSArray<SimpleParameter*>*  queryParams;
/// 描述
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 发布日期，格式为毫秒级时间戳
@property (strong,nonatomic,nonnull)  NSNumber*  createTime;
/// 排序，赋值0时为默认的后端配置
@property (strong,nonatomic,nonnull)  NSNumber*  sort;
/// 排序，用于展示使用
@property (strong,nonatomic,nonnull)  NSNumber*  userSort;
/// vpc网关id
@property (strong,nonatomic,nonnull)  NSString*  jdsfId;
/// vpc后端地址
@property (strong,nonatomic,nonnull)  NSString*  jdsfParam;
/// vpc网关所属region
@property (strong,nonatomic,nonnull)  NSString*  jdsfRegion;
/// vpc网关创建者的pin
@property (strong,nonatomic,nonnull)  NSString*  jdsfPin;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// backendConfigId
@property (strong,nonatomic,nonnull)  NSString*  backendConfigId;
-(id) initWithRegion:(NSString *)regionId
baseGroupId:(NSString*)baseGroupId
environment:(NSString*)environment
backendUrl:(NSString*)backendUrl
backendServiceType:(NSString*)backendServiceType
headerParams:(NSArray<SimpleParameter*>*)headerParams
queryParams:(NSArray<SimpleParameter*>*)queryParams
descriptionValue:(NSString*)descriptionValue
createTime:(NSNumber*)createTime
sort:(NSNumber*)sort
userSort:(NSNumber*)userSort
jdsfId:(NSString*)jdsfId
jdsfParam:(NSString*)jdsfParam
jdsfRegion:(NSString*)jdsfRegion
jdsfPin:(NSString*)jdsfPin
apiGroupId:(NSString*)apiGroupId
backendConfigId:(NSString*)backendConfigId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
baseGroupId:(NSString*)baseGroupId
environment:(NSString*)environment
backendUrl:(NSString*)backendUrl
backendServiceType:(NSString*)backendServiceType
headerParams:(NSArray<SimpleParameter*>*)headerParams
queryParams:(NSArray<SimpleParameter*>*)queryParams
descriptionValue:(NSString*)descriptionValue
createTime:(NSNumber*)createTime
sort:(NSNumber*)sort
userSort:(NSNumber*)userSort
jdsfId:(NSString*)jdsfId
jdsfParam:(NSString*)jdsfParam
jdsfRegion:(NSString*)jdsfRegion
jdsfPin:(NSString*)jdsfPin
apiGroupId:(NSString*)apiGroupId
backendConfigId:(NSString*)backendConfigId;

@end

@interface ApigatewayDescribeBackendConfigsRequest:JDCloudRequest

/// 页码, 默认为1, 取值范围：[1,∞)
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小，默认为20，取值范围：[10,100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// sort - 路由排序，赋值0时为默认的后端配置
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// 环境：test、preview、online
@property (strong,nonatomic,nonnull)  NSString*  environment;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId
environment:(NSString*)environment;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId
environment:(NSString*)environment;

@end

@interface ApigatewayCreateBackendConfigRequest:JDCloudRequest

/// 接口ID
@property (strong,nonatomic,nonnull)  NSString*  backendConfigId;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  baseGroupId;
/// 环境：test、preview、online
@property (strong,nonatomic,nonnull)  NSString*  environment;
/// 后端地址
@property (strong,nonatomic,nonnull)  NSString*  backendUrl;
/// 后端服务类型：mock、HTTP/HTTPS
@property (strong,nonatomic,nonnull)  NSString*  backendServiceType;
/// header参数列表
@property (strong,nonatomic,nonnull)  NSArray<SimpleParameter*>*  headerParams;
/// query参数列表
@property (strong,nonatomic,nonnull)  NSArray<SimpleParameter*>*  queryParams;
/// 描述
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 发布日期，格式为毫秒级时间戳
@property (strong,nonatomic,nonnull)  NSNumber*  createTime;
/// 排序，赋值0时为默认的后端配置
@property (strong,nonatomic,nonnull)  NSNumber*  sort;
/// 排序，用于展示使用
@property (strong,nonatomic,nonnull)  NSNumber*  userSort;
/// vpc网关id
@property (strong,nonatomic,nonnull)  NSString*  jdsfId;
/// vpc后端地址
@property (strong,nonatomic,nonnull)  NSString*  jdsfParam;
/// vpc网关所属region
@property (strong,nonatomic,nonnull)  NSString*  jdsfRegion;
/// vpc网关创建者的pin
@property (strong,nonatomic,nonnull)  NSString*  jdsfPin;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
-(id) initWithRegion:(NSString *)regionId
backendConfigId:(NSString*)backendConfigId
baseGroupId:(NSString*)baseGroupId
environment:(NSString*)environment
backendUrl:(NSString*)backendUrl
backendServiceType:(NSString*)backendServiceType
headerParams:(NSArray<SimpleParameter*>*)headerParams
queryParams:(NSArray<SimpleParameter*>*)queryParams
descriptionValue:(NSString*)descriptionValue
createTime:(NSNumber*)createTime
sort:(NSNumber*)sort
userSort:(NSNumber*)userSort
jdsfId:(NSString*)jdsfId
jdsfParam:(NSString*)jdsfParam
jdsfRegion:(NSString*)jdsfRegion
jdsfPin:(NSString*)jdsfPin
apiGroupId:(NSString*)apiGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
backendConfigId:(NSString*)backendConfigId
baseGroupId:(NSString*)baseGroupId
environment:(NSString*)environment
backendUrl:(NSString*)backendUrl
backendServiceType:(NSString*)backendServiceType
headerParams:(NSArray<SimpleParameter*>*)headerParams
queryParams:(NSArray<SimpleParameter*>*)queryParams
descriptionValue:(NSString*)descriptionValue
createTime:(NSNumber*)createTime
sort:(NSNumber*)sort
userSort:(NSNumber*)userSort
jdsfId:(NSString*)jdsfId
jdsfParam:(NSString*)jdsfParam
jdsfRegion:(NSString*)jdsfRegion
jdsfPin:(NSString*)jdsfPin
apiGroupId:(NSString*)apiGroupId;

@end

@interface ApigatewayDescribeBackendConfigResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDescribeBackendConfigResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDescribeBackendConfigResult*) result;
@end

@interface ApigatewayDeleteBackendConfigResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface ApigatewayDeleteBackendConfigResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDeleteBackendConfigResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDeleteBackendConfigResult*) result;
@end

@interface ApigatewayQueryRevisionResult : NSObject
/// Apis
 @property (strong,nonatomic,nonnull)  NSArray<Api*>*  apis;
/// 查询的版本数目
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithApis:(NSArray<Api*>*) apis

    totalCount:(NSNumber*)totalCount;
@end

@interface ApigatewayDescribeRevisionsRequest:JDCloudRequest

/// 页码, 默认为1, 取值范围：[1,∞)
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小，默认为20，取值范围：[10,100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// revision - 修订版本号，精确匹配
   /// environment - 发布环境，模糊匹配
   /// revisionNote - 修订备注，精确匹配
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId;

@end

@interface ApigatewayQueryRevisionResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryRevisionResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryRevisionResult*) result;
@end

@interface ApigatewayDescribeRevisionsResult : NSObject
/// Revisions
 @property (strong,nonatomic,nonnull)  NSArray<RevisionList*>*  revisions;
/// 查询的版本数目
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithRevisions:(NSArray<RevisionList*>*) revisions

    totalCount:(NSNumber*)totalCount;
@end

@interface ApigatewayDescribeRevisionsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDescribeRevisionsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDescribeRevisionsResult*) result;
@end

@interface ApigatewayCreateRevisionResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCreateRevisionResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCreateRevisionResult*) result;
@end

@interface ApigatewayModifyRevisionResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayModifyRevisionResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayModifyRevisionResult*) result;
@end

@interface ApigatewayDeleteRevisionResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDeleteRevisionResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDeleteRevisionResult*) result;
@end

@interface ApigatewayGetRevisionIdsResult : NSObject
/// Revisions
 @property (strong,nonatomic,nonnull)  NSArray<RevisionList*>*  revisions;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithRevisions:(NSArray<RevisionList*>*) revisions;
@end

@interface ApigatewayGetRevisionIdsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayGetRevisionIdsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayGetRevisionIdsResult*) result;
@end

@interface ApigatewayQueryRevisionRequest:JDCloudRequest

/// 页码, 默认为1, 取值范围：[1,∞)
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小，默认为20，取值范围：[10,100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// revision - 修订版本号，模糊匹配
   /// environment - 发布环境，模糊匹配
   /// revisionNote - 修订备注，模糊匹配
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
/// 分组ID
@property (strong,nonatomic,nonnull)  NSString*  apiGroupId;
/// 版本ID
@property (strong,nonatomic,nonnull)  NSString*  revisionId;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId
revisionId:(NSString*)revisionId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId
revisionId:(NSString*)revisionId;

@end

@interface ApigatewayCheckRevisionExistResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCheckRevisionExistResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCheckRevisionExistResult*) result;
@end

@interface ApigatewayQueryUcAccessKeysResult : NSObject
/// AccessKeys
 @property (strong,nonatomic,nonnull)  NSArray<UcAccessKey*>*  accessKeys;
/// 查询的密钥数目
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithAccessKeys:(NSArray<UcAccessKey*>*) accessKeys

    totalCount:(NSNumber*)totalCount;
@end

@interface ApigatewayQueryUcAccessKeysRequest:JDCloudRequest

/// 页码, 默认为1, 取值范围：[1,∞)
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小，默认为20，取值范围：[10,100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// accessKey - accesskey，精确匹配
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters;

@end

@interface ApigatewayQueryUcAccessKeysResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryUcAccessKeysResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryUcAccessKeysResult*) result;
@end

@interface ApigatewayQueryKeyInfoResult : NSObject
/// KeyInfo
 @property (strong,nonatomic,nonnull)  KeyInfo*  keyInfo;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithKeyInfo:(KeyInfo*) keyInfo;
@end

@interface ApigatewayQueryKeyInfoResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryKeyInfoResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryKeyInfoResult*) result;
@end

@interface ApigatewayResetKeyResult : NSObject
/// KeyInfo
 @property (strong,nonatomic,nonnull)  KeyInfo*  keyInfo;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithKeyInfo:(KeyInfo*) keyInfo;
@end

@interface ApigatewayResetKeyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayResetKeyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayResetKeyResult*) result;
@end

@interface ApigatewayCreateKeyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCreateKeyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCreateKeyResult*) result;
@end

@interface ApigatewayUpdateKeyResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface ApigatewayUpdateKeyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayUpdateKeyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayUpdateKeyResult*) result;
@end

@interface ApigatewayQueryKeysResult : NSObject
/// total count
 @property (strong,nonatomic,nonnull)  NSNumber*  total;
/// Data
 @property (strong,nonatomic,nonnull)  NSArray<KeyInfo*>*  data;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithTotal:(NSNumber*) total

    data:(NSArray<KeyInfo*>*)data;
@end

@interface ApigatewayQueryKeysResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryKeysResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryKeysResult*) result;
@end

@interface ApigatewayDescribeApiGroupResult : NSObject
/// ApiGroup
 @property (strong,nonatomic,nonnull)  ApiGroup*  apiGroup;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithApiGroup:(ApiGroup*) apiGroup;
@end

@interface ApigatewayDescribeApiGroupResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDescribeApiGroupResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDescribeApiGroupResult*) result;
@end

@interface ApigatewayCreateApiGroupResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCreateApiGroupResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCreateApiGroupResult*) result;
@end

@interface ApigatewayCheckGroupNameExistResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCheckGroupNameExistResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCheckGroupNameExistResult*) result;
@end

@interface ApigatewayDeleteApiGroupResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface ApigatewayDeleteApiGroupResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDeleteApiGroupResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDeleteApiGroupResult*) result;
@end

@interface ApigatewayDescribeIsDeployApiGroupsRequest:JDCloudRequest

/// deployStatus - 发布状态，已发布：1，未发布：0
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
filters:(NSArray<Filter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
filters:(NSArray<Filter*>*)filters;

@end

@interface ApigatewayDescribeApiGroupsResult : NSObject
/// ApiGroups
 @property (strong,nonatomic,nonnull)  NSArray<ApiGroup*>*  apiGroups;
/// 查询的分组数目
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithApiGroups:(NSArray<ApiGroup*>*) apiGroups

    totalCount:(NSNumber*)totalCount;
@end

@interface ApigatewayModifyApiGroupAttributeResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface ApigatewayDescribeApiGroupsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDescribeApiGroupsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDescribeApiGroupsResult*) result;
@end

@interface ApigatewayDescribeIsDeployApiGroupsResult : NSObject
/// ApiGroups
 @property (strong,nonatomic,nonnull)  NSArray<ApiGroup*>*  apiGroups;
/// 查询的分组数目
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithApiGroups:(NSArray<ApiGroup*>*) apiGroups

    totalCount:(NSNumber*)totalCount;
@end

@interface ApigatewayDescribeIsDeployApiGroupsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDescribeIsDeployApiGroupsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDescribeIsDeployApiGroupsResult*) result;
@end

@interface ApigatewayModifyApiGroupAttributeResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayModifyApiGroupAttributeResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayModifyApiGroupAttributeResult*) result;
@end

@interface ApigatewayDescribeApiGroupsRequest:JDCloudRequest

/// 页码, 默认为1, 取值范围：[1,∞)
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小，默认为20，取值范围：[10,100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// groupName - 分组名称，模糊匹配，支持单个
   /// description - 描述信息，模糊匹配，支持单个
   /// groupId - 分组ID，精确匹配
   /// domain - 域名，模糊匹配
   /// jdsfId - 微服务网关ID，精确匹配
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
/// 标签查询条件
@property (strong,nonatomic,nonnull)  NSArray<TagFilter*>*  tagFilters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
tagFilters:(NSArray<TagFilter*>*)tagFilters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
tagFilters:(NSArray<TagFilter*>*)tagFilters;

@end

@interface ApigatewayQueryUserDomainsResult : NSObject
/// total count
 @property (strong,nonatomic,nonnull)  NSNumber*  total;
/// Data
 @property (strong,nonatomic,nonnull)  NSArray<DomainInfo*>*  data;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithTotal:(NSNumber*) total

    data:(NSArray<DomainInfo*>*)data;
@end

@interface ApigatewayQueryUserDomainsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryUserDomainsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryUserDomainsResult*) result;
@end

@interface ApigatewayDeleteUserDomainResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface ApigatewayDeleteUserDomainResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDeleteUserDomainResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDeleteUserDomainResult*) result;
@end

@interface ApigatewayCreateUserDomainResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCreateUserDomainResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCreateUserDomainResult*) result;
@end

@interface ApigatewayQueryKeyGroupListResult : NSObject
/// BindGroups
 @property (strong,nonatomic,nonnull)  NSArray<BindGroups*>*  bindGroups;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups;
@end

@interface ApigatewayQueryAccessKeyResult : NSObject
/// AccessKey
 @property (strong,nonatomic,nonnull)  AccessKey*  accessKey;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithAccessKey:(AccessKey*) accessKey;
@end

@interface ApigatewayCheckKeyExistResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface ApigatewayQueryAccessKeyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryAccessKeyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryAccessKeyResult*) result;
@end

@interface ApigatewayQueryBindGroupKeyResult : NSObject
/// BindGroups
 @property (strong,nonatomic,nonnull)  NSArray<BindGroups*>*  bindGroups;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups;
@end

@interface ApigatewayQueryBindGroupKeyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryBindGroupKeyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryBindGroupKeyResult*) result;
@end

@interface ApigatewayQueryKeyGroupListResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryKeyGroupListResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryKeyGroupListResult*) result;
@end

@interface ApigatewayDeleteAccessKeyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDeleteAccessKeyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDeleteAccessKeyResult*) result;
@end

@interface ApigatewayUpdateAccessKeyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayUpdateAccessKeyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayUpdateAccessKeyResult*) result;
@end

@interface ApigatewayBindGroupKeyResult : NSObject
/// BindGroups
 @property (strong,nonatomic,nonnull)  NSArray<BindGroups*>*  bindGroups;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups;
@end

@interface ApigatewayBindGroupKeyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayBindGroupKeyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayBindGroupKeyResult*) result;
@end

@interface ApigatewayQueryAccessKeysResult : NSObject
/// AccessKeys
 @property (strong,nonatomic,nonnull)  NSArray<AccessKey*>*  accessKeys;
/// 查询的密钥数目
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithAccessKeys:(NSArray<AccessKey*>*) accessKeys

    totalCount:(NSNumber*)totalCount;
@end

@interface ApigatewayCreateAccessKeyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCreateAccessKeyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCreateAccessKeyResult*) result;
@end

@interface ApigatewayQueryAccessKeysResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryAccessKeysResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryAccessKeysResult*) result;
@end

@interface ApigatewayQueryAccessKeysRequest:JDCloudRequest

/// 页码, 默认为1, 取值范围：[1,∞)
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小，默认为20，取值范围：[10,100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// description - 名称，模糊匹配
   /// accessKey - accesskey，模糊匹配
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters;

@end

@interface ApigatewayCheckKeyExistResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCheckKeyExistResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCheckKeyExistResult*) result;
@end

@interface ApigatewayQueryAccessAuthResult : NSObject
/// AccessAuth
 @property (strong,nonatomic,nonnull)  AccessAuth*  accessAuth;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithAccessAuth:(AccessAuth*) accessAuth;
@end

@interface ApigatewayQueryAuthGroupListResult : NSObject
/// BindGroups
 @property (strong,nonatomic,nonnull)  NSArray<BindGroups*>*  bindGroups;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups;
@end

@interface ApigatewayQueryAuthGroupListResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryAuthGroupListResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryAuthGroupListResult*) result;
@end

@interface ApigatewayAuthorizedApiGroupListResult : NSObject
/// ApiGroups
 @property (strong,nonatomic,nonnull)  NSArray<UserBindedGroups*>*  apiGroups;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithApiGroups:(NSArray<UserBindedGroups*>*) apiGroups;
@end

@interface ApigatewayAuthorizedApiGroupListResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayAuthorizedApiGroupListResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayAuthorizedApiGroupListResult*) result;
@end

@interface ApigatewayQueryAccessAuthsResult : NSObject
/// AccessAuths
 @property (strong,nonatomic,nonnull)  NSArray<AccessAuth*>*  accessAuths;
/// 查询的访问授权数目
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithAccessAuths:(NSArray<AccessAuth*>*) accessAuths

    totalCount:(NSNumber*)totalCount;
@end

@interface ApigatewayQueryAccessAuthsRequest:JDCloudRequest

/// 页码, 默认为1, 取值范围：[1,∞)
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小，默认为20，取值范围：[10,100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// auth_user_type - 授权类型，默认为 全部类型
   /// auth_user_id - 用户标识，精确匹配，jd_cloud（京东云用户）, jd_apikms（api网关签名密钥）, jd_subscription_key（订阅密钥）,jd_cloud_pin（激活用户）
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters;

@end

@interface ApigatewayBindGroupAuthResult : NSObject
/// BindGroups
 @property (strong,nonatomic,nonnull)  NSArray<BindGroups*>*  bindGroups;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups;
@end

@interface ApigatewayCreateAccessAuthRequest:JDCloudRequest

/// api分组
@property (strong,nonatomic,nonnull)  AccessAuthView*  accessAuthView;
-(id) initWithRegion:(NSString *)regionId
accessAuthView:(AccessAuthView*)accessAuthView;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessAuthView:(AccessAuthView*)accessAuthView;

@end

@interface ApigatewayQueryBindGroupAuthResult : NSObject
/// BindGroups
 @property (strong,nonatomic,nonnull)  NSArray<BindGroups*>*  bindGroups;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups;
@end

@interface ApigatewayQueryBindGroupAuthResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryBindGroupAuthResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryBindGroupAuthResult*) result;
@end

@interface ApigatewayBindGroupAuthResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayBindGroupAuthResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayBindGroupAuthResult*) result;
@end

@interface ApigatewayCreateAccessAuthResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCreateAccessAuthResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCreateAccessAuthResult*) result;
@end

@interface ApigatewayUpdateAccessAuthResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayUpdateAccessAuthResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayUpdateAccessAuthResult*) result;
@end

@interface ApigatewayAuthorizedApiGroupListRequest:JDCloudRequest

/// 页码, 默认为1, 取值范围：[1,∞)
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小，默认为20，取值范围：[10,100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// apiGroupName - 名称，模糊匹配
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters;

@end

@interface ApigatewayQueryAccessAuthsResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryAccessAuthsResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryAccessAuthsResult*) result;
@end

@interface ApigatewayQueryAccessAuthResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQueryAccessAuthResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQueryAccessAuthResult*) result;
@end

@interface ApigatewayUpdateAccessAuthRequest:JDCloudRequest

/// 访问授权详情
@property (strong,nonatomic,nonnull)  AccessAuthView*  accessAuthView;
/// 访问授权ID
@property (strong,nonatomic,nonnull)  NSString*  accessAuthId;
-(id) initWithRegion:(NSString *)regionId
accessAuthView:(AccessAuthView*)accessAuthView
accessAuthId:(NSString*)accessAuthId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessAuthView:(AccessAuthView*)accessAuthView
accessAuthId:(NSString*)accessAuthId;

@end

@interface ApigatewayCheckAuthExistResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCheckAuthExistResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCheckAuthExistResult*) result;
@end

@interface ApigatewayDeleteAccessAuthResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDeleteAccessAuthResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDeleteAccessAuthResult*) result;
@end

@interface ApigatewayCheckPinResult : NSObject

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
@end

@interface ApigatewayCheckPinResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCheckPinResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCheckPinResult*) result;
@end

@interface ApigatewayDeleteSubscriptionKeyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayDeleteSubscriptionKeyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayDeleteSubscriptionKeyResult*) result;
@end

@interface ApigatewayCreateSubscriptionKeyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayCreateSubscriptionKeyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayCreateSubscriptionKeyResult*) result;
@end

@interface ApigatewayUpdateSubscriptionKeyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayUpdateSubscriptionKeyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayUpdateSubscriptionKeyResult*) result;
@end

@interface ApigatewayQuerySubscriptionKeyResult : NSObject
/// SubscriptionKey
 @property (strong,nonatomic,nonnull)  SubscriptionKey*  subscriptionKey;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSubscriptionKey:(SubscriptionKey*) subscriptionKey;
@end

@interface ApigatewayQuerySubscriptionKeyResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQuerySubscriptionKeyResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQuerySubscriptionKeyResult*) result;
@end

@interface ApigatewayQuerySubscriptionKeysResult : NSObject
/// SubscriptionKeys
 @property (strong,nonatomic,nonnull)  NSArray<SubscriptionKey*>*  subscriptionKeys;
/// 查询的密钥数目
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithSubscriptionKeys:(NSArray<SubscriptionKey*>*) subscriptionKeys

    totalCount:(NSNumber*)totalCount;
@end

@interface ApigatewayQuerySubscriptionKeysResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property ApigatewayQuerySubscriptionKeysResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(ApigatewayQuerySubscriptionKeysResult*) result;
@end

@interface ApigatewayQuerySubscriptionKeysRequest:JDCloudRequest

/// 页码, 默认为1, 取值范围：[1,∞)
@property (strong,nonatomic,nonnull)  NSNumber*  pageNumber;
/// 分页大小，默认为20，取值范围：[10,100]
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;
/// description - 名称，模糊匹配
   /// subscriptionKeyId - subscriptionKeyId，精确匹配
   /// orderBy - 排序类型 desc asc
   /// 
@property (strong,nonatomic,nonnull)  NSArray<Filter*>*  filters;
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters;

@end

#endif /* ApigatewayApiModel_h */
